同Hadoop安装,到
CDH版下载地址下载hbase。选择 hbase-1.0.0-cdh5.4.0.tar.gz
hbase伪分布式模式是基于hdfs环境的
因此,在安装hadoop的前提下,我们配置Hbase的伪分布式模式如下:
1 2 3 4 5 6
| vi ~/.bashrc #添加 export PATH=$PATH:/opt/app/skyeye/hbase-1.0.0-cdh5.4.0/bin . ~/.bashrc #验证 hbase version
|
伪集群模式配置
- 1.配置 conf/hbase-env.sh
将JAVA_HOME变量设置为本机jdk路径。如下:
1 2
| export JAVA_HOME=/opt/tools/jdk1.8.0_131 #配置本机的java安装根目录 export HBASE_MANAGES_ZK=true #配置使用hbase自带的zookeeper,不使用自己搭建的zookeeper
|
如果使用 export HBASE_MANAGES_ZK=true, 即配置不使用hbase自带的zookeeper,使用自己搭建的zookeeper
hbase可以使用自定义zookeeper管理,也可以使用自带的zookeeper。
- 2.配置conf/hbase-site.xml
修改hbase.rootdir,将其指向hdfs,并指定Hbase在HDFS上的存储路径。
将hbase.cluster.distributed设置为true。
添加zk的节点地址。如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| <configuration> <property> <name>hbase.cluster.distributed</name> <value>true</value> </property> <property> <name>hbase.rootdir</name> <value>hdfs://localhost:9000/hbase</value> </property> <!--以下信息只有在使用自己搭建的zk时添加--> <property> <name>hbase.zookeeper.quorum</name> <value>cdhnode1,cdhnode2,cdhnode3</value> </property> <!--默认为/tmp/目录下--> <property> <name>hbase.tmp.dir</name> <value>/opt/app/skyeye/data/hbasetmp/</value> </property> </configuration>
|
完成上述操作之后,启动HBase,需要先启动Hadoop。
启动及检查:
1 2 3 4 5 6 7 8 9
| zbm@node3:~$ start-all.sh
zbm@node3:~$ jps 9250 ResourceManager 9683 Jps 9365 NodeManager 9110 SecondaryNameNode 8935 DataNode 8795 NameNode
|
上述则Hadoop启动成功。
当前版本。使用start-all.sh启动hadoop时会提示以下信息,所以建议分别启动hdfs和yarn。
1
| This script is Deprecated. Instead use start-dfs.sh and start-yarn.sh
|
之后启动HBase,启动及检查
1 2 3 4 5 6 7 8 9 10 11 12
| start-hbase.sh # 启动Hbase
zbm@node3:~$ jps # 检查 3728 Jps 3123 HRegionServer 2407 NodeManager 1961 DataNode 2298 ResourceManager 3004 HMaster 1852 NameNode 2158 SecondaryNameNode 2943 HQuorumPeer
|
以上几个进程说明Hbase启动成功。
可以进入shell模式,通过命令行操作查看hbase数据库信息。
1 2 3 4 5
| hbase shell #进入shell模式 list # 查看当前数据库所有表信息 describe 'member' # 查看表结构 # 创建一个member表,其拥有member_id,address,info三个列族 create 'member','member_id','address','info'
|
1 2 3 4 5 6 7 8 9 10
| zbm@node3:~$ hadoop fs -ls /hbase 17/10/28 20:45:14 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable Found 6 items drwxr-xr-x - nova supergroup 0 2017-10-28 00:03 /hbase/.tmp drwxr-xr-x - nova supergroup 0 2017-10-28 00:03 /hbase/WALs drwxr-xr-x - nova supergroup 0 2017-10-28 00:03 /hbase/data -rw-r--r-- 3 nova supergroup 42 2017-10-28 00:03 /hbase/hbase.id -rw-r--r-- 3 nova supergroup 7 2017-10-28 00:03 /hbase/hbase.version drwxr-xr-x - nova supergroup 0 2017-10-28 00:14 /hbase/oldWALs
|
问题:停止hbase时,HRegionServer进程不能停止。会导致下次启动hbase时出错。
原因:
HBase的用户界面